package com.tubang.logistics.service;

import com.tubang.logistics.entity.GoodsEntity;
import com.baomidou.mybatisplus.service.IService;

import java.util.List;

/**
 * <p>
 * 货品表 服务类
 * </p>
 *
 * @author wsl
 * @since 2017-12-31
 */
public interface IGoodsService extends IService<GoodsEntity> {

    /**
     * 查询父级
     * @param orderId
     * @return
     */
    GoodsEntity selectBaseGoodsByOrderId(String orderId);


    /**
     * 查询父级
     * @param orderId
     * @return
     */
    GoodsEntity selectBaseGoodsByOrderId(String orderId,String status);

    /**
     * 查询详细
     * @param orderId
     * @return
     */
    List<GoodsEntity> selectGoodssByOrderId(String orderId);


    /**
     * 查询详细
     * @param orderId
     * @return
     */
    List<GoodsEntity> selectGoodssByOrderId(String orderId,String status);

    /**
     * 更新货品状态
     * @param goodsId
     * @param status
     * @return
     */
    boolean updateGoodssStatus(String goodsId, String status);


    /**
     *
     * @param goodsId
     * @return
     */
    GoodsEntity selectBaseGoodsByGoodsId(String goodsId);


    /**
     * 查询所有平台订单内的商品表
     * @param orderId
     * @param status
     * @return
     */
    List<GoodsEntity> selectGoodssByPlatFormOrderId(String orderId, String status);
    /**
     * 查询物流公司运单商品列表
     * @param orderId
     * @param statusCode
     * @return
     */
    List<GoodsEntity> selectGoodssByLogisticsOrderId(String orderId,Integer statusCode);

    /**
     * 查询物理公司运单商品的 base-goodsId
     * @param id
     * @return
     */
    GoodsEntity selectBaseGoodsByLogisticsOrderId(String id);

    /**
     * 根据运单id查询
     * @param orderId
     * @return
     */
    List<GoodsEntity> selectGoodssByTruckerOrderId(String orderId);

    /**
     *  运单id查询 base-goodsId
     * @param orderId
     * @return
     */
    GoodsEntity selectBaseGoodsByTruckerOrderId(String orderId);


    /**
     * PlatFormOrderId 查询basegoods
     * @param orderId
     * @return
     */
    GoodsEntity selectBaseGoodsByPlatFormOrderId(String orderId);
}
